package route

import (
	"autoDeploy/service/route"
	"github.com/gin-gonic/gin"
	"github.com/golang-jwt/jwt"
)

type Route struct{}

//	GetRoute
//
// 描述信息： 根据token返回角色的路由信息
//
// Param：
//
//	c ：
//
// Return：角色的路由信息
func (r Route) GetRoute(c *gin.Context) {
	// 从上下文中获取所有的 Claims 信息
	claims, _ := c.Get("claims")
	if claims != nil {
		// 将 Claims 转换为 jwt.MapClaims
		claimsMap := claims.(jwt.MapClaims)
		// 访问 phone 字段
		phone := claimsMap["phone"].(string)
		//调用service方法
		userMsg, err := route.GetRoute(phone)
		if err != nil {
			c.JSON(500, gin.H{
				"code":    0,
				"message": "Failed to get userMsg",
			})
		}

		c.JSON(200, gin.H{
			"code":     1,
			"message":  "获取用户信息成功",
			"UserData": userMsg,
		})
	} else {
		c.JSON(500, gin.H{
			"code":    0,
			"message": "Failed to get claims",
		})
	}
}
